﻿using System;
using System.Text;

namespace Lypshare.Net
{
	/// <summary>
	/// Data event arguments.
	/// </summary>
	/// <exception cref='ArgumentNullException'>
	/// Is thrown when an argument passed to a method is invalid because it is <see langword="null" /> .
	/// </exception>
    public class DataEventArgs : EventArgs
    {
        // --------------------------------------------------------
        // Class Properties
        // --------------------------------------------------------


        /// <summary>
        /// Gets or sets the packet.
        /// </summary>
        /// <value>
        /// The packet.
        /// </value>
        public Packet Packet 
        { 
            get; 
            private set; 
        
        } // Property: Packet


        // --------------------------------------------------------
        // Class Functions
        // --------------------------------------------------------


        /// <summary>
        /// Initializes a new instance of the <see cref="Lypshare.Net.DataEventArgs"/> class.
        /// </summary>
        /// <param name='packet'>
        /// Packet.
        /// </param>
        /// <exception cref='ArgumentNullException'>
        /// Is thrown when an argument passed to a method is invalid because it is <see langword="null" /> .
        /// </exception>
        public DataEventArgs(Packet packet)
        {
            if (packet == null)
                throw new ArgumentNullException("packet");

            this.Packet = packet;

        } // Constructor

    } // class DataEventArgs
} // namespace Lypshare.Net